package org.patterns.creational.abstractfactory;


/**
 * SkinFactory接口定义了创建不同类型的用户界面控件的方法
 * 这些控件共享相同的皮肤或样式，但具体实现可能因皮肤而异
 * 该接口的目的是提供一个创建控件的标准方式，而无需指定具体的皮肤实现
 */
public interface SkinFactory {
    /**
     * 创建一个按钮控件
     * @return 返回一个新创建的按钮控件实例
     */
    public Button createButton();

    /**
     * 创建一个文本字段控件
     * @return 返回一个新创建的文本字段控件实例
     */
    public TextField createTextField();

    /**
     * 创建一个组合框控件
     * @return 返回一个新创建的组合框控件实例
     */
    public ComboBox createComboBox();
}
